package jp.ac.aiit.spg.web.login;

import javax.ejb.EJB;
import org.seasar.teeda.extension.annotation.validator.Required;

import jp.ac.aiit.spg.AbstractSpgPage;
import jp.ac.aiit.spg.common.SpgConstant;
import jp.ac.aiit.spg.entity.SpgUser;
import jp.ac.aiit.spg.service.SpgService;
import jp.ac.aiit.spg.web.wbs.ListProjectsPage;

public class LoginPage extends AbstractSpgPage {

	@EJB
	private SpgService ss;

	
	@Required
	private String userName;

	@Required
	private String password;

	
	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getLayout(){
		return null;
	}
	
	/**
	 * ログイン
	 */
	public Class doLogin() {

		if ( ss.isValidUser(userName, password) == true ) {
			// ログイン成功
			SpgUser user = ss.findUser(userName);
			setSessionAttribute(SpgConstant.SESSION_BIND_LOGIN_STATUS, new Boolean(true));
			setSessionAttribute(SpgConstant.SESSION_BIND_LOGIN_USERID, user.getId());
			// 画面遷移
			// （動作確認のみ）
			return ListProjectsPage.class; 
		} else {
			// ログイン失敗
			setSessionAttribute(SpgConstant.SESSION_BIND_LOGIN_STATUS, new Boolean(false));
			// エラーメッセージを出したいが、、、以下だと出ない。
			// FacesMessageUtil.addErrorMessage("ログインエラーです");
		}
		return null;
	}
	
}
